/*
 * IndiceResultado.h
 *
 *  Created on: May 21, 2012
 *      Author: lucasj
 */

// Indice Resultado: Guarda el resultado de la consulta.
// Lo guarda al revés que el índice de dimensiones:
// el primer parámetro es el código del dato y el segundo la
// la dimensión.

#ifndef INDICERESULTADO_H_
#define INDICERESULTADO_H_

#include <string>
#include <map>
#include <list>
#include <iostream>

typedef std::multimap<int, std::string>::iterator iteradorResultado;

namespace ResultIndex {

class IndiceResultado {
private:
	std::multimap<int, std::string> map;
public:
	IndiceResultado();
	virtual ~IndiceResultado();
	void SetElem(int &cod, const std::string &dimension);
	void ObtenerDatos(int cantValores, std::list<int> &listaResultados);
	friend std::ostringstream& operator<<(std::ostringstream& oss, IndiceResultado &indice);
};
std::ostringstream& operator<<(std::ostringstream& oss, IndiceResultado &indice);
}
#endif
